package main

import (
	"fmt"
)

func main() {
	list := []int{0,0,0,1}
	res := dominantIndex(list)
	fmt.Println(res)

}

/*
在一个给定的数组nums中，总是存在一个最大元素 。
查找数组中的最大元素是否至少是数组中每个其他数字的两倍。
如果是，则返回最大元素的索引，否则返回-1。
示例 1:
输入: nums = [3, 6, 1, 0]
输出: 1
解释: 6是最大的整数, 对于数组中的其他整数,
6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.
来源：力扣（LeetCode）
链接：https://leetcode-cn.com/problems/largest-number-at-least-twice-of-others
著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
*/

func dominantIndex(nums []int) int {

	//假设所引0的位置是最大数
	index := 0
	max := 0
	for i := 0; i < len(nums); i++ {
		fmt.Println(nums[i],max)
		if nums[i] > max {
			index = i
			max = nums[i]
		}
	}
	fmt.Println(index,nums[index])
	for _, num := range nums {
		if num == 0 || num == max {
			continue
		}

		if max/num < 2 {

			return -1
		}
	}

	return index
}
